#include "mytextedit.h"

MyTextEdit::MyTextEdit(QWidget *parent):QTextEdit(parent)
{

}

void MyTextEdit::wheelEvent(QWheelEvent *wheel_evt)
{
    // 按下ctrl
    if(ctrl_pressed==1){
        // +120放大，-120缩小字体
        if(wheel_evt->angleDelta().y()==120){
            zoomIn(1);
        }else {
            zoomOut(1);
        }
        wheel_evt->accept();
    }else{
        // 如果没有按下，ctrl再滚轮，就按原来QTextEdit的方法来处理事件，恢复滚轮上下滑动
        QTextEdit::wheelEvent(wheel_evt);
        return;
    }
}

void MyTextEdit::keyPressEvent(QKeyEvent *key_evt)
{
    if(key_evt->key() == Qt::Key_Control){
        ctrl_pressed = 1;
    }
    // 调用父类处理其他按键（如 Backspace、Enter 等）
    QTextEdit::keyPressEvent(key_evt);
}

void MyTextEdit::keyReleaseEvent(QKeyEvent *key_evt)
{
    if(key_evt->key() == Qt::Key_Control){
        ctrl_pressed = 0;
    }
    // 调用父类处理其他按键（如 Backspace、Enter 等）
    QTextEdit::keyReleaseEvent(key_evt);
}




